1. Field of the Invention
This invention relates to the decoding of phase encoded data, frequency modulation encoded data or modified frequency modulation encoded data. More specifically, this invention is primarily directed to minimizing the number of errors that occur in reading a block of data, and a related advantage of this method over prior techniques is that the amount of data lost per error incident is minimized.
2. Description of Prior Art (Prior Art Statement)
Representation of the closest known prior art is U.S. Pat. No. 3,795,903 to Royce Darwin Lindsey, filed Sept. 29, 1972, issued Mar. 5, 1974, entitled "Modified Phase Encoding", the IBM Memory Typewriter, announced Mar. 1, 1974, employing a phase encoding technique described generally by the Lindsey patent and more particularly by a publication to G. T. Webb and L. K. Whitfield, IBM Technical Disclosure Bulletin, Vol. 16, No. 6, p. 1760 (November, 1973). Also relevant is a publication to Joel A. Kramer, EDN, pages 75-81 (May 5, 1978).
U.S. Pat. No. 3,795,903 describes an encoding and decoding technique for phase encoded data, including a technique for detecting loss of phase and/or bit synchronization, and resynchronization following an error. For defining each multi-bit character or data segment, an additional one-half bit time is added between characters and encoded such that a corrective flux reversal may occur at one-half T (where T equals the normal intra character bit time) and a transition between characters must not occur at one T after the last data transition of the character. For decoding, windows are established in accordance with a predetermined nominal data rate and the timing for these windows is resynchronized at each data transition, but not at the corrective flux transitions that occur between data bits of the same binary value. If the last bit of one character is of opposite value to the first bit of the immediately following character, no corrective flux reversal transition is necessary between these characters, and one and one-half bit times elapses between any transition in the coding. Assuming this coding is recorded on a magnetic media, bit shifting sometimes occurs within this region of two transitions separated by one and one-half bit times, as an inherent property of magnetic recording is that substantially separated flux transitions sometimes appear to move closer together on the magnetic media. During decoding of this flux transition pattern, the transitions may therefore not be aligned with the designated windows for decoding, and errors will, accordingly, be indicated. Also, one and one-half bit times elapse before resynchronizing the detection logic with the transitions read from the media.
In the IBM Memory Typewriter, a magnetic recording phase encoding technique slightly modified from that described above includes a flux transition at one-half bit time after the last date bit of each character and another flux transition at one and one-half bit times after the last data bit of each character. The first data bit flux transition of the following character occurs at two and one-half bit times after the last data bit transition of the previous character. If the last data bit of a character has the same binary value as the first data bit of the succeeding character, a corrective flux transition occurs at two bit times after the last data transition of the previous character. Thus, one bit time is the maximum time between flux transitions. This substantially lessens the error rate due to the bit shifting described above, but since resynchronization of the clocking circuitry that provides the windows for decoding occurs only at data transition times and at the transition occurring one and one-half bit times after the last bit of a data segment, one and one-half bit times still elapse between each character during which time the detection clocking circuitry is not reset. Therefore, media velocity variations that occur between characters are just as prone to cause errors, since the clocking circuitry is still not reset for one and one-half bit times rather than for one bit time as is the case between data transitions within the character.
Readjustment of analog clocking circuitry at each transition has been found in the prior art. However, analog techniques make use of variable frequency oscillators which do not synchronize as rapidly or over as wide a range as is often necessary in inexpensive drive mechanisms whose media velocities may be rapidly varying. Furthermore, analog components are usually too expensive and bulky to be advantageous in low-cost systems.
Pure digital logic implementations of decoding circuitry which resynchronize at each flux transition have been found in the prior art with respect to a few specialized fixed length and variable length codes. The specialized codes which are decodeable by prior art digital logic techniques and which resynchronize at each transition often use more space on a magnetic media to encode a given binary data sequence than the efficient codes used herein, and are, therefore, undesireable. The ratiometric code described in the referenced Kramer article is an example of a code of this type. Variable length codes are also not as preferrable as the fixed length codes used herein because the physical media requirements to record a block of data encoded in a variable length code is unpredictable, and more room is required for recording data in this manner since enough room must be allowed on the media for a worst case of a relatively high percentage of "long" characters. Finally, previous decoding techniques have often required characters within the data stream to be separated by means of relatively large gaps between transistions which are susceptible to bit shift, and these large intercharacter gaps are not a requirement of the decoding methods explained herein.
It would, therefore, be advantageous to utilize a very efficient digital technique for resynchronizing the decoding clocking logic on every transition in a compact, fixed length code which achieves greater velocity tolerance of a magnetic media relative to a read/record head. It would also be benefical for the technique to include the ability to separate data into characters without large gaps between transitions, the capability of resynchronizing the clocking logic with a loss of no more than one character, and the capability of adapting to a wide range of data rates while also achieving a high bit density due to the fixed length nature of the code.